package down.xiaoheihe.work.Entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class TOrderExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public TOrderExample() {
        oredCriteria = new ArrayList<>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andUseruidIsNull() {
            addCriterion("useruid is null");
            return (Criteria) this;
        }

        public Criteria andUseruidIsNotNull() {
            addCriterion("useruid is not null");
            return (Criteria) this;
        }

        public Criteria andUseruidEqualTo(Integer value) {
            addCriterion("useruid =", value, "useruid");
            return (Criteria) this;
        }

        public Criteria andUseruidNotEqualTo(Integer value) {
            addCriterion("useruid <>", value, "useruid");
            return (Criteria) this;
        }

        public Criteria andUseruidGreaterThan(Integer value) {
            addCriterion("useruid >", value, "useruid");
            return (Criteria) this;
        }

        public Criteria andUseruidGreaterThanOrEqualTo(Integer value) {
            addCriterion("useruid >=", value, "useruid");
            return (Criteria) this;
        }

        public Criteria andUseruidLessThan(Integer value) {
            addCriterion("useruid <", value, "useruid");
            return (Criteria) this;
        }

        public Criteria andUseruidLessThanOrEqualTo(Integer value) {
            addCriterion("useruid <=", value, "useruid");
            return (Criteria) this;
        }

        public Criteria andUseruidIn(List<Integer> values) {
            addCriterion("useruid in", values, "useruid");
            return (Criteria) this;
        }

        public Criteria andUseruidNotIn(List<Integer> values) {
            addCriterion("useruid not in", values, "useruid");
            return (Criteria) this;
        }

        public Criteria andUseruidBetween(Integer value1, Integer value2) {
            addCriterion("useruid between", value1, value2, "useruid");
            return (Criteria) this;
        }

        public Criteria andUseruidNotBetween(Integer value1, Integer value2) {
            addCriterion("useruid not between", value1, value2, "useruid");
            return (Criteria) this;
        }

        public Criteria andMaijiauidIsNull() {
            addCriterion("maijiauid is null");
            return (Criteria) this;
        }

        public Criteria andMaijiauidIsNotNull() {
            addCriterion("maijiauid is not null");
            return (Criteria) this;
        }

        public Criteria andMaijiauidEqualTo(Integer value) {
            addCriterion("maijiauid =", value, "maijiauid");
            return (Criteria) this;
        }

        public Criteria andMaijiauidNotEqualTo(Integer value) {
            addCriterion("maijiauid <>", value, "maijiauid");
            return (Criteria) this;
        }

        public Criteria andMaijiauidGreaterThan(Integer value) {
            addCriterion("maijiauid >", value, "maijiauid");
            return (Criteria) this;
        }

        public Criteria andMaijiauidGreaterThanOrEqualTo(Integer value) {
            addCriterion("maijiauid >=", value, "maijiauid");
            return (Criteria) this;
        }

        public Criteria andMaijiauidLessThan(Integer value) {
            addCriterion("maijiauid <", value, "maijiauid");
            return (Criteria) this;
        }

        public Criteria andMaijiauidLessThanOrEqualTo(Integer value) {
            addCriterion("maijiauid <=", value, "maijiauid");
            return (Criteria) this;
        }

        public Criteria andMaijiauidIn(List<Integer> values) {
            addCriterion("maijiauid in", values, "maijiauid");
            return (Criteria) this;
        }

        public Criteria andMaijiauidNotIn(List<Integer> values) {
            addCriterion("maijiauid not in", values, "maijiauid");
            return (Criteria) this;
        }

        public Criteria andMaijiauidBetween(Integer value1, Integer value2) {
            addCriterion("maijiauid between", value1, value2, "maijiauid");
            return (Criteria) this;
        }

        public Criteria andMaijiauidNotBetween(Integer value1, Integer value2) {
            addCriterion("maijiauid not between", value1, value2, "maijiauid");
            return (Criteria) this;
        }

        public Criteria andProductIdIsNull() {
            addCriterion("product_id is null");
            return (Criteria) this;
        }

        public Criteria andProductIdIsNotNull() {
            addCriterion("product_id is not null");
            return (Criteria) this;
        }

        public Criteria andProductIdEqualTo(Integer value) {
            addCriterion("product_id =", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdNotEqualTo(Integer value) {
            addCriterion("product_id <>", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdGreaterThan(Integer value) {
            addCriterion("product_id >", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("product_id >=", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdLessThan(Integer value) {
            addCriterion("product_id <", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdLessThanOrEqualTo(Integer value) {
            addCriterion("product_id <=", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdIn(List<Integer> values) {
            addCriterion("product_id in", values, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdNotIn(List<Integer> values) {
            addCriterion("product_id not in", values, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdBetween(Integer value1, Integer value2) {
            addCriterion("product_id between", value1, value2, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdNotBetween(Integer value1, Integer value2) {
            addCriterion("product_id not between", value1, value2, "productId");
            return (Criteria) this;
        }

        public Criteria andDaysIsNull() {
            addCriterion("`days` is null");
            return (Criteria) this;
        }

        public Criteria andDaysIsNotNull() {
            addCriterion("`days` is not null");
            return (Criteria) this;
        }

        public Criteria andDaysEqualTo(Integer value) {
            addCriterion("`days` =", value, "days");
            return (Criteria) this;
        }

        public Criteria andDaysNotEqualTo(Integer value) {
            addCriterion("`days` <>", value, "days");
            return (Criteria) this;
        }

        public Criteria andDaysGreaterThan(Integer value) {
            addCriterion("`days` >", value, "days");
            return (Criteria) this;
        }

        public Criteria andDaysGreaterThanOrEqualTo(Integer value) {
            addCriterion("`days` >=", value, "days");
            return (Criteria) this;
        }

        public Criteria andDaysLessThan(Integer value) {
            addCriterion("`days` <", value, "days");
            return (Criteria) this;
        }

        public Criteria andDaysLessThanOrEqualTo(Integer value) {
            addCriterion("`days` <=", value, "days");
            return (Criteria) this;
        }

        public Criteria andDaysIn(List<Integer> values) {
            addCriterion("`days` in", values, "days");
            return (Criteria) this;
        }

        public Criteria andDaysNotIn(List<Integer> values) {
            addCriterion("`days` not in", values, "days");
            return (Criteria) this;
        }

        public Criteria andDaysBetween(Integer value1, Integer value2) {
            addCriterion("`days` between", value1, value2, "days");
            return (Criteria) this;
        }

        public Criteria andDaysNotBetween(Integer value1, Integer value2) {
            addCriterion("`days` not between", value1, value2, "days");
            return (Criteria) this;
        }

        public Criteria andTotalPriceIsNull() {
            addCriterion("total_price is null");
            return (Criteria) this;
        }

        public Criteria andTotalPriceIsNotNull() {
            addCriterion("total_price is not null");
            return (Criteria) this;
        }

        public Criteria andTotalPriceEqualTo(Long value) {
            addCriterion("total_price =", value, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceNotEqualTo(Long value) {
            addCriterion("total_price <>", value, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceGreaterThan(Long value) {
            addCriterion("total_price >", value, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceGreaterThanOrEqualTo(Long value) {
            addCriterion("total_price >=", value, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceLessThan(Long value) {
            addCriterion("total_price <", value, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceLessThanOrEqualTo(Long value) {
            addCriterion("total_price <=", value, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceIn(List<Long> values) {
            addCriterion("total_price in", values, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceNotIn(List<Long> values) {
            addCriterion("total_price not in", values, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceBetween(Long value1, Long value2) {
            addCriterion("total_price between", value1, value2, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceNotBetween(Long value1, Long value2) {
            addCriterion("total_price not between", value1, value2, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressIsNull() {
            addCriterion("fahuoaddress is null");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressIsNotNull() {
            addCriterion("fahuoaddress is not null");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressEqualTo(String value) {
            addCriterion("fahuoaddress =", value, "fahuoaddress");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressNotEqualTo(String value) {
            addCriterion("fahuoaddress <>", value, "fahuoaddress");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressGreaterThan(String value) {
            addCriterion("fahuoaddress >", value, "fahuoaddress");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressGreaterThanOrEqualTo(String value) {
            addCriterion("fahuoaddress >=", value, "fahuoaddress");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressLessThan(String value) {
            addCriterion("fahuoaddress <", value, "fahuoaddress");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressLessThanOrEqualTo(String value) {
            addCriterion("fahuoaddress <=", value, "fahuoaddress");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressLike(String value) {
            addCriterion("fahuoaddress like", value, "fahuoaddress");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressNotLike(String value) {
            addCriterion("fahuoaddress not like", value, "fahuoaddress");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressIn(List<String> values) {
            addCriterion("fahuoaddress in", values, "fahuoaddress");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressNotIn(List<String> values) {
            addCriterion("fahuoaddress not in", values, "fahuoaddress");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressBetween(String value1, String value2) {
            addCriterion("fahuoaddress between", value1, value2, "fahuoaddress");
            return (Criteria) this;
        }

        public Criteria andFahuoaddressNotBetween(String value1, String value2) {
            addCriterion("fahuoaddress not between", value1, value2, "fahuoaddress");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressIsNull() {
            addCriterion("jihuiaddress is null");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressIsNotNull() {
            addCriterion("jihuiaddress is not null");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressEqualTo(String value) {
            addCriterion("jihuiaddress =", value, "jihuiaddress");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressNotEqualTo(String value) {
            addCriterion("jihuiaddress <>", value, "jihuiaddress");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressGreaterThan(String value) {
            addCriterion("jihuiaddress >", value, "jihuiaddress");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressGreaterThanOrEqualTo(String value) {
            addCriterion("jihuiaddress >=", value, "jihuiaddress");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressLessThan(String value) {
            addCriterion("jihuiaddress <", value, "jihuiaddress");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressLessThanOrEqualTo(String value) {
            addCriterion("jihuiaddress <=", value, "jihuiaddress");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressLike(String value) {
            addCriterion("jihuiaddress like", value, "jihuiaddress");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressNotLike(String value) {
            addCriterion("jihuiaddress not like", value, "jihuiaddress");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressIn(List<String> values) {
            addCriterion("jihuiaddress in", values, "jihuiaddress");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressNotIn(List<String> values) {
            addCriterion("jihuiaddress not in", values, "jihuiaddress");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressBetween(String value1, String value2) {
            addCriterion("jihuiaddress between", value1, value2, "jihuiaddress");
            return (Criteria) this;
        }

        public Criteria andJihuiaddressNotBetween(String value1, String value2) {
            addCriterion("jihuiaddress not between", value1, value2, "jihuiaddress");
            return (Criteria) this;
        }

        public Criteria andFawuliuIsNull() {
            addCriterion("fawuliu is null");
            return (Criteria) this;
        }

        public Criteria andFawuliuIsNotNull() {
            addCriterion("fawuliu is not null");
            return (Criteria) this;
        }

        public Criteria andFawuliuEqualTo(String value) {
            addCriterion("fawuliu =", value, "fawuliu");
            return (Criteria) this;
        }

        public Criteria andFawuliuNotEqualTo(String value) {
            addCriterion("fawuliu <>", value, "fawuliu");
            return (Criteria) this;
        }

        public Criteria andFawuliuGreaterThan(String value) {
            addCriterion("fawuliu >", value, "fawuliu");
            return (Criteria) this;
        }

        public Criteria andFawuliuGreaterThanOrEqualTo(String value) {
            addCriterion("fawuliu >=", value, "fawuliu");
            return (Criteria) this;
        }

        public Criteria andFawuliuLessThan(String value) {
            addCriterion("fawuliu <", value, "fawuliu");
            return (Criteria) this;
        }

        public Criteria andFawuliuLessThanOrEqualTo(String value) {
            addCriterion("fawuliu <=", value, "fawuliu");
            return (Criteria) this;
        }

        public Criteria andFawuliuLike(String value) {
            addCriterion("fawuliu like", value, "fawuliu");
            return (Criteria) this;
        }

        public Criteria andFawuliuNotLike(String value) {
            addCriterion("fawuliu not like", value, "fawuliu");
            return (Criteria) this;
        }

        public Criteria andFawuliuIn(List<String> values) {
            addCriterion("fawuliu in", values, "fawuliu");
            return (Criteria) this;
        }

        public Criteria andFawuliuNotIn(List<String> values) {
            addCriterion("fawuliu not in", values, "fawuliu");
            return (Criteria) this;
        }

        public Criteria andFawuliuBetween(String value1, String value2) {
            addCriterion("fawuliu between", value1, value2, "fawuliu");
            return (Criteria) this;
        }

        public Criteria andFawuliuNotBetween(String value1, String value2) {
            addCriterion("fawuliu not between", value1, value2, "fawuliu");
            return (Criteria) this;
        }

        public Criteria andJiwuliuIsNull() {
            addCriterion("jiwuliu is null");
            return (Criteria) this;
        }

        public Criteria andJiwuliuIsNotNull() {
            addCriterion("jiwuliu is not null");
            return (Criteria) this;
        }

        public Criteria andJiwuliuEqualTo(String value) {
            addCriterion("jiwuliu =", value, "jiwuliu");
            return (Criteria) this;
        }

        public Criteria andJiwuliuNotEqualTo(String value) {
            addCriterion("jiwuliu <>", value, "jiwuliu");
            return (Criteria) this;
        }

        public Criteria andJiwuliuGreaterThan(String value) {
            addCriterion("jiwuliu >", value, "jiwuliu");
            return (Criteria) this;
        }

        public Criteria andJiwuliuGreaterThanOrEqualTo(String value) {
            addCriterion("jiwuliu >=", value, "jiwuliu");
            return (Criteria) this;
        }

        public Criteria andJiwuliuLessThan(String value) {
            addCriterion("jiwuliu <", value, "jiwuliu");
            return (Criteria) this;
        }

        public Criteria andJiwuliuLessThanOrEqualTo(String value) {
            addCriterion("jiwuliu <=", value, "jiwuliu");
            return (Criteria) this;
        }

        public Criteria andJiwuliuLike(String value) {
            addCriterion("jiwuliu like", value, "jiwuliu");
            return (Criteria) this;
        }

        public Criteria andJiwuliuNotLike(String value) {
            addCriterion("jiwuliu not like", value, "jiwuliu");
            return (Criteria) this;
        }

        public Criteria andJiwuliuIn(List<String> values) {
            addCriterion("jiwuliu in", values, "jiwuliu");
            return (Criteria) this;
        }

        public Criteria andJiwuliuNotIn(List<String> values) {
            addCriterion("jiwuliu not in", values, "jiwuliu");
            return (Criteria) this;
        }

        public Criteria andJiwuliuBetween(String value1, String value2) {
            addCriterion("jiwuliu between", value1, value2, "jiwuliu");
            return (Criteria) this;
        }

        public Criteria andJiwuliuNotBetween(String value1, String value2) {
            addCriterion("jiwuliu not between", value1, value2, "jiwuliu");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("`status` is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("`status` is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("`status` =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("`status` <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("`status` >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("`status` >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("`status` <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("`status` <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("`status` in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("`status` not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("`status` between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("`status` not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {
        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}